{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# DoWhy-The Causal Story Behind Hotel Booking Cancellations" ] }, { "attachments": { "Screenshot%20from%202020-09-29%2019-08-50.png": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABcUAAAMoCAYAAAAOXYhzAAAAinpUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjaVY7ZDcNACET/qSIlcB/lRCtbSgcpP+yuFcvvYxgQGoDj+znhNSFUUIv0csdGS4vfbRI3gkiMNGvr5qpC7bjbqwfhbbwyUO9FVXxg4ulnaISbDx/c6XyILCVBWFszbL5Sd9AwtH36Oedc//2BH/3bLR10qE2JAAAKCGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNC40LjAtRXhpdjIiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgZXhpZjpQaXhlbFhEaW1lbnNpb249IjE0NzciCiAgIGV4aWY6UGl4ZWxZRGltZW5zaW9uPSI4MDgiCiAgIHRpZmY6SW1hZ2VXaWR0aD0iMTQ3NyIKICAgdGlmZjpJbWFnZUhlaWdodD0iODA4IgogICB0aWZmOk9yaWVudGF0aW9uPSIxIi8+CiA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz6PSh+UAAAABHNCSVQICAgIfAhkiAAAIABJREFUeNrs3XdgFGX+x/H3zPbdJJsektBC6EWqoqAiRexYsJwn9nLiWc6z6915ZztP72w/PbtYAM+OIgqIFBu9IxBK6BBCes9md+b3R+gERUFIyOf1T2B3duaZ78zOzn7m2WcM27ZtREREREREREREREQaAVMlEBEREREREREREZHGQqG4iIiIiIiIiIiIiDQaCsVFREREREREREREpNFQKC4iIiIiIiIiIiIijYZCcRERERERERERERFpNBSKi4iIiIiIiIiIiEijoVBcRERERERERERERBoNheIiIiIiIiIiIiIi0mgoFBcRERERERERERGRRkOhuIiIiIiIiIiIiIg0GgrFRURERERERERERKTRcKoEcjRZu7mAmrClQohIgxAX7SMxLqBCiIiIiIiIiBxGhm3btsogR4sBN7zCprxSFUJEGoQrzuzGA9cNVCFEREREREREDiP1FJejim3b3HlZX4YOOkbFEJF67bZ/j1URRERERERERI4AheJyVHE4TOKDAeKDfhVDROq1uCiviiAiIiIiIiJyBOhGmyIiIiIiIiIiIiLSaCgUFxEREREREREREZFGQ6G4iIiIiIiIiIiIiDQaCsVFREREREREREREpNFQKC4iIiIiIiIiIiIijYZCcRERERERERERERFpNBSKi4iIiIiIiIiIiEijoVBcRERERERERERERBoNheIiIiIiIiIiIiIi0mgoFBcRERERERERERGRRkOhuIiIiIiIiIiIiIg0GgrFRURERERERERERKTRUCguIiIiIiIiIiIiIo2GQnERERERERERERERaTQUiouIiIiIiIiIiIhIo6FQXEREREREREREREQaDadKIPLLbMotoSYcbnDtTggGiA54tAFFRERERERERKRRUygu8gudftvThKqjGly7/3rtKQw7q6c2oIiIiIiIiIiINGoKxUV+IRuDxCZLiU1Y12DavDarvzaciIiIiIiIiIgICsVFfjEDC5erCqe7usG02eGq1oYTERERERERERFBN9oUERERERERERERkUZEobiIiIiIiIiIiIiINBoKxUVERERERERERESk0VAoLiIi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AHgahOIAAAAAAAAAgKdBKA4AAAAAAAAAeBqE4gAAAAAAAACAp0EoDgAAAAAAAAB4GoTiAAAAAAAAAICnQSgOAAAAAAAAAHgahOIAAAAAAAAAgKdBKA4AAAAAAAAAeBqE4gAAAAAAAACAp0EoDgAAAAAAAAB4GoTiAAAAAAAAAICnQSgOAAAAAAAAAHgahOIAAAAAAAAAgKdBKA4AAAAAAAAAeBqE4gAAAAAAAACAp0EoDgAAAAAAAAB4GoTiAAAAAAAAAICnQSgOAAAAAAAAAHgahOIAAAAAAAAAgKdBKA4AAAAAAAAAeBqE4gAAAAAAAACAp0EoDgAAAAAAAAB4GoTiAAAAAAAAAICnQSgOAAAAAAAAAHgahOIAAAAAAAAAgKdBKA4AAAAAAAAAeBqE4gAAAAAAAACAp0EoDgAAAAAAAAB4GoTiAAAAAAAAAICnQSgOAAAAAAAAAHgahOIAAAAAAAAAgKdBKA4AAAAAAAAAeBqE4gAAAAAAAACAp0EoDgAAAAAAAAB4GoTiAAAAAAAAAICnQSgOAAAAAAAAAHgahOIAAAAAAAAAgKdBKA4AAAAAAAAAeBqE4gAAAAAAAACAp0EoDgAAAAAAAAB4GoTiAAAAAAAAAICnQSgOAAAAAAAAAHgahOIAAAAAAAAAgKdBKA4AAAAAAAAAeBqE4gAAAAAAAACAp0EoDgAAAAAAAAB4GoTiAAAAAAAAAICnQSgOAAAAAAAAAHgahOIAAAAAAAAAgKdBKA4AAAAAAAAAeBqE4gAAAAAAAACAp0EoDgAAAAAAAAB4GoTiAAAAAAAAAICnQSgOAAAAAAAAAHgahOIAAAAAAAAAgKdBKA4AAAAAAAAAeBqE4gAAAAAAAACAp0EoDgAAAAAAAAB4GoTiAAAAAAAAAICnQSgOAAAAAAAAAHgahOIAAAAAAAAAgKdBKA4AAAAAAAAAeBr/D/TFad3f2G3kAAAAAElFTkSuQmCC" } }, "cell_type": "markdown", "metadata": {}, "source": [ "![Screenshot%20from%202020-09-29%2019-08-50.png](attachment:Screenshot%20from%202020-09-29%2019-08-50.png)\n", "\n", "We consider the problem of estimating what impact does assigning a room different to what a customer had reserved has on the booking cancellation.\n", "\n", "The gold standard of finding this out would be to use experiments such as *Randomized Controlled Trials* wherein each customer is randomly assigned to one of the two categories i.e. each customer is either assigned a different room or the same room as he had booked before.\n", "\n", "But what if we cannot intervene or its too costly too peform such an experiment (Ex- The Hotel would start losing its reputation if people learn that its randomly assigning people to different rooms). Can we somehow answer our query using only observational data or data that has been collected in the past?\n", "\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "#!pip install dowhy\n", "import dowhy\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import logging\n", "logging.getLogger(\"dowhy\").setLevel(logging.INFO)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
hotelis_canceledlead_timearrival_date_yeararrival_date_montharrival_date_week_numberarrival_date_day_of_monthstays_in_weekend_nightsstays_in_week_nightsadults...deposit_typeagentcompanydays_in_waiting_listcustomer_typeadrrequired_car_parking_spacestotal_of_special_requestsreservation_statusreservation_status_date
0Resort Hotel03422015July271002...No DepositNaNNaN0Transient0.000Check-Out2015-07-01
1Resort Hotel07372015July271002...No DepositNaNNaN0Transient0.000Check-Out2015-07-01
2Resort Hotel072015July271011...No DepositNaNNaN0Transient75.000Check-Out2015-07-02
3Resort Hotel0132015July271011...No Deposit304.0NaN0Transient75.000Check-Out2015-07-02
4Resort Hotel0142015July271022...No Deposit240.0NaN0Transient98.001Check-Out2015-07-03
\n", "

5 rows × 32 columns

\n", "
" ], "text/plain": [ " hotel is_canceled lead_time arrival_date_year arrival_date_month \\\n", "0 Resort Hotel 0 342 2015 July \n", "1 Resort Hotel 0 737 2015 July \n", "2 Resort Hotel 0 7 2015 July \n", "3 Resort Hotel 0 13 2015 July \n", "4 Resort Hotel 0 14 2015 July \n", "\n", " arrival_date_week_number arrival_date_day_of_month \\\n", "0 27 1 \n", "1 27 1 \n", "2 27 1 \n", "3 27 1 \n", "4 27 1 \n", "\n", " stays_in_weekend_nights stays_in_week_nights adults ... deposit_type \\\n", "0 0 0 2 ... No Deposit \n", "1 0 0 2 ... No Deposit \n", "2 0 1 1 ... No Deposit \n", "3 0 1 1 ... No Deposit \n", "4 0 2 2 ... No Deposit \n", "\n", " agent company days_in_waiting_list customer_type adr \\\n", "0 NaN NaN 0 Transient 0.0 \n", "1 NaN NaN 0 Transient 0.0 \n", "2 NaN NaN 0 Transient 75.0 \n", "3 304.0 NaN 0 Transient 75.0 \n", "4 240.0 NaN 0 Transient 98.0 \n", "\n", " required_car_parking_spaces total_of_special_requests reservation_status \\\n", "0 0 0 Check-Out \n", "1 0 0 Check-Out \n", "2 0 0 Check-Out \n", "3 0 0 Check-Out \n", "4 0 1 Check-Out \n", "\n", " reservation_status_date \n", "0 2015-07-01 \n", "1 2015-07-01 \n", "2 2015-07-02 \n", "3 2015-07-02 \n", "4 2015-07-03 \n", "\n", "[5 rows x 32 columns]" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dataset = pd.read_csv('https://raw.githubusercontent.com/Sid-darthvader/DoWhy-The-Causal-Story-Behind-Hotel-Booking-Cancellations/master/hotel_bookings.csv')\n", "dataset.head()" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Index(['hotel', 'is_canceled', 'lead_time', 'arrival_date_year',\n", " 'arrival_date_month', 'arrival_date_week_number',\n", " 'arrival_date_day_of_month', 'stays_in_weekend_nights',\n", " 'stays_in_week_nights', 'adults', 'children', 'babies', 'meal',\n", " 'country', 'market_segment', 'distribution_channel',\n", " 'is_repeated_guest', 'previous_cancellations',\n", " 'previous_bookings_not_canceled', 'reserved_room_type',\n", " 'assigned_room_type', 'booking_changes', 'deposit_type', 'agent',\n", " 'company', 'days_in_waiting_list', 'customer_type', 'adr',\n", " 'required_car_parking_spaces', 'total_of_special_requests',\n", " 'reservation_status', 'reservation_status_date'],\n", " dtype='object')" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dataset.columns" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Data Description\n", "For a quick glance of the features and their descriptions the reader is referred here.\n", "https://github.com/rfordatascience/tidytuesday/blob/master/data/2020/2020-02-11/readme.md" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Feature Engineering\n", "\n", "Lets create some new and meaningful features so as to reduce the dimensionality of the dataset. The following features have been created:-\n", "- **Total Stay** = stays_in_weekend_nights + stays_in_week_nights\n", "- **Guests** = adults + children + babies\n", "- **Different_room_assigned** = 1 if reserved_room_type & assigned_room_type are different, 0 otherwise." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Index(['hotel', 'is_canceled', 'lead_time', 'arrival_date_year',\n", " 'arrival_date_month', 'arrival_date_week_number',\n", " 'arrival_date_day_of_month', 'meal', 'country', 'market_segment',\n", " 'distribution_channel', 'is_repeated_guest', 'previous_cancellations',\n", " 'previous_bookings_not_canceled', 'booking_changes', 'deposit_type',\n", " 'agent', 'company', 'days_in_waiting_list', 'customer_type', 'adr',\n", " 'required_car_parking_spaces', 'total_of_special_requests',\n", " 'reservation_status', 'reservation_status_date', 'total_stay', 'guests',\n", " 'different_room_assigned'],\n", " dtype='object')" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Total stay in nights\n", "dataset['total_stay'] = dataset['stays_in_week_nights']+dataset['stays_in_weekend_nights']\n", "# Total number of guests\n", "dataset['guests'] = dataset['adults']+dataset['children'] +dataset['babies']\n", "# Creating the different_room_assigned feature\n", "dataset['different_room_assigned']=0\n", "slice_indices =dataset['reserved_room_type']!=dataset['assigned_room_type']\n", "dataset.loc[slice_indices,'different_room_assigned']=1\n", "# Deleting older features\n", "dataset = dataset.drop(['stays_in_week_nights','stays_in_weekend_nights','adults','children','babies'\n", " ,'reserved_room_type','assigned_room_type'],axis=1)\n", "dataset.columns" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "dataset.isnull().sum() # Country,Agent,Company contain 488,16340,112593 missing entries \n", "dataset = dataset.drop(['agent','company'],axis=1)\n", "# Replacing missing countries with most freqently occuring countries\n", "dataset['country']= dataset['country'].fillna(dataset['country'].mode()[0])" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "dataset = dataset.drop(['reservation_status','reservation_status_date','arrival_date_day_of_month'],axis=1)\n", "dataset = dataset.drop(['arrival_date_year'],axis=1)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
hotelis_canceledlead_timearrival_date_montharrival_date_week_numbermealcountrymarket_segmentdistribution_channelis_repeated_guest...booking_changesdeposit_typedays_in_waiting_listcustomer_typeadrrequired_car_parking_spacestotal_of_special_requeststotal_stayguestsdifferent_room_assigned
0Resort HotelFalse342July27BBPRTDirectDirect0...3No Deposit0Transient0.00002.0False
1Resort HotelFalse737July27BBPRTDirectDirect0...4No Deposit0Transient0.00002.0False
2Resort HotelFalse7July27BBGBRDirectDirect0...0No Deposit0Transient75.00011.0True
3Resort HotelFalse13July27BBGBRCorporateCorporate0...0No Deposit0Transient75.00011.0False
4Resort HotelFalse14July27BBGBROnline TATA/TO0...0No Deposit0Transient98.00122.0False
\n", "

5 rows × 22 columns

\n", "
" ], "text/plain": [ " hotel is_canceled lead_time arrival_date_month \\\n", "0 Resort Hotel False 342 July \n", "1 Resort Hotel False 737 July \n", "2 Resort Hotel False 7 July \n", "3 Resort Hotel False 13 July \n", "4 Resort Hotel False 14 July \n", "\n", " arrival_date_week_number meal country market_segment distribution_channel \\\n", "0 27 BB PRT Direct Direct \n", "1 27 BB PRT Direct Direct \n", "2 27 BB GBR Direct Direct \n", "3 27 BB GBR Corporate Corporate \n", "4 27 BB GBR Online TA TA/TO \n", "\n", " is_repeated_guest ... booking_changes deposit_type \\\n", "0 0 ... 3 No Deposit \n", "1 0 ... 4 No Deposit \n", "2 0 ... 0 No Deposit \n", "3 0 ... 0 No Deposit \n", "4 0 ... 0 No Deposit \n", "\n", " days_in_waiting_list customer_type adr required_car_parking_spaces \\\n", "0 0 Transient 0.0 0 \n", "1 0 Transient 0.0 0 \n", "2 0 Transient 75.0 0 \n", "3 0 Transient 75.0 0 \n", "4 0 Transient 98.0 0 \n", "\n", " total_of_special_requests total_stay guests different_room_assigned \n", "0 0 0 2.0 False \n", "1 0 0 2.0 False \n", "2 0 1 1.0 True \n", "3 0 1 1.0 False \n", "4 1 2 2.0 False \n", "\n", "[5 rows x 22 columns]" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Replacing 1 by True and 0 by False for the experiment and outcome variables\n", "dataset['different_room_assigned']= dataset['different_room_assigned'].replace(1,True)\n", "dataset['different_room_assigned']= dataset['different_room_assigned'].replace(0,False)\n", "dataset['is_canceled']= dataset['is_canceled'].replace(1,True)\n", "dataset['is_canceled']= dataset['is_canceled'].replace(0,False)\n", "dataset.dropna(inplace=True)\n", "dataset.head()" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [], "source": [ "dataset_copy = dataset.copy(deep=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Calculating Expected Counts\n", "Since the number of number of cancellations and the number of times a different room was assigned is heavily imbalanced, we first choose 1000 observations at random to see that in how many cases do the variables; *'is_cancelled'* & *'different_room_assigned'* attain the same values. This whole process is then repeated 10000 times and the expected count turns out to be 51.8% which is almost 50% (i.e. the probability of these two variables attaining the same value at random).\n", "So statistically speaking, we have no definite conclusion at this stage. Thus assigning rooms different to what a customer had reserved during his booking earlier, may or may not lead to him/her cancelling that booking." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAF8AAAASCAYAAAA9igJHAAAD6ElEQVR4nO3Ya4hVVRQH8N+oYSli0UuoSJ2yhKik6AnmVFhaVPaAPmQRlQWJPQyFKBr7VH0w7UEFYYH5qcIeZGXlYFpUUBTYy+cY9lQrs6ay0j6sfeneM+d6z5xT+WX+cFnn7rPXWnuvs157t3V2durHnsGAzP9u7Gry+yaH/1I8iBX4Kc17qoDe87AUm/Ar1uNpnFpw3fvjWizG2iRjG1bimpx9leWBQ7EAX+F3YaN52K+qjkE5ArYl4Vn8nDN2B45L7zbh6CYbqMe9mIWteA5bcAQuxCW4UusPeBkewdfowhc4GBfjcUxKc3ZV5GnH2zgIz+MznISbcC5OT/sopaMtk3a6Ex3ZYvM1dAijr8UZSeEiXNFk/gh8ic04Ft9lZC3DBoxuofdMDMVL2JmR/x4OE1H5bEWeVzERM0SE1zAXt+Ax3FBWR7NQK4ourNHoLbvD4UnnuxoNX5O1HQcWkLMML2rcIJEaH03PEyrytAvDd+PhDM9d+AVThbFL6cgz/mDhubeL8OrAwJx5ZbAGO0ToHpB5Nx7D8HpFHX8k+mdFno5El+ptzO14C0NwSlkdeTl/BBZmxjbgaiwvqKgZvsdsEbafiJy/VXjZBXgN11eQP0jUDHilIs9Ria5uwrdGRMYYvFFGR9b4T4jO5WPxdUdjOqbhZdGNfNRCUSvME6G8ANfVja/Fk3qno77gHhyDJSJfV+EZnui2Jny18X3L6simnTkib32LHqwSBWUu9kFnAUWtMAvPCEO3i5x5gmg3F+G+knJnYKboSKb+hzz/2rqKFtxasRhfcSETRKv5Am4VBu/BB5giOqGZWnc7WUzHfJHKOkR6q8pT8+zh8lEb/7GsjqLG35zo0N3Oao3zE+3Kedcj2rEBGNcHmTeLNnCV2GDeYbAMz+eJjmki48hEm9WEljqKGr9W0dcXnN8MgxNt1k7WxncUlDcb9+NDscEi9aIoT81BJuptp2HigNWDd8rqqBc6Vr5nj8RD6bnI1cHusCLRaTgk826S2NBv4lRZj3Zxet6rbuxOUcjex1nipNwKfeFZJ9rMkbgx826OsNVC0e+X0lF/wu0U+fZNbBTdTru4h9lbVOopGr3yovQjWtRzRHTUjLwFt9XNHyCq/dlJ/mIRjmNFSmoT4To/s85ucUAblZ6vEgX7LxHaeR1Jd5pTQxme7PXCpzhZePNqnKbxeqFPOupbzS7R244THjhUFJOV4gsv1Pske3xSWI/R/imYGzUafycmC0+6XHzMIaIQLcEDwttaYVSiA8XHysNyjYYsw7MOJ+JucZczWdzbzBfe/0OVdWXvdvrxP6Lq3U4/KqDf+HsQfwP3Azt2y7AoUAAAAABJRU5ErkJggg==\n", "text/latex": [ "$\\displaystyle 518.2202$" ], "text/plain": [ "518.2202" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "counts_sum=0\n", "for i in range(1,10000):\n", " counts_i = 0\n", " rdf = dataset.sample(1000)\n", " counts_i = rdf[rdf[\"is_canceled\"]== rdf[\"different_room_assigned\"]].shape[0]\n", " counts_sum+= counts_i\n", "counts_sum/10000" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We now consider the scenario when there were no booking changes and recalculate the expected count." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAGAAAAASCAYAAACkctvyAAAEw0lEQVR4nO3Yd+hWVRgH8I9lW5tUBmWW2KJle6BpwxZFNigiGzSIErMhhVH9DELbew8rA4uySbYwyWxSGBSWWvkrSqWsNE0zK/vjOZf3er33fV9fJf/xC5dz73m+Z9zznGec06Gtrc1qrDqs0UB+Bpak57wSeQecj48wH3/gE1xY0fdmqZ8X8DUWYi4m4twm5lOGrfEYZmAR2nEHNllJ/Ha1NSg+sxrM7TDxr7PSWDPwBo7JCB3rNN4G94iF7VTBeQqn4yeMxgIcgftxEM4s8E9JspkYj++xJU7EIzg6cZY0+LEM3fE+tsBL+Ar74RIchYPxywrwM8wVSipifp253YQh+AEvYzY2x97og7FUK6ADRqbJPI8rSjj9xeJPTz8xO9WvjTEYgBdT+wxTcTxexb+5+qH4GCcJZYyp82N53CcWcxDuztXfhktxg7DGVvkZ5qCtyTkRXmEInsAF+KsgXyt7qTL5QTgU5wi3Uob+qbxVbfGlwa5J7wMLbd7GK5ZefMJEH0jvfSrGK6I7+gkXcW9Bdp2Y9wBs0CK/VawjFPm98sWHxdlLmQJ2xgjciQl1BuqSym9LZFldL2ERzSCb1N9N8vum8k3LKnQe3sP6OKBFfh7riHg4VLirvlizYl5HCFfzfBrnWFyZ2h1YJBddUEeMEtobWjFAhmzXb1ci2z7X3/bC19ZDR7V48XoDboYdUzm1Qj5N7PgdMK4Ffh5dxLrkMV14iHcK9fum8k9Mwq4F+QScjJ9Z1gKuRU+cLTKUeng1lZdh01z9WhiW+67KLvIYkSY6VmQJzWCjVM6tkGf1G7fIzzBSZDNdhHvaDQ+iG17DHgX+FqkcIpKJXuiM3YX19cazGTlvAfuLXX8rPqiYZB5PC595JCaLrOJPHI6thBV1tay5FzEIlwsrGdDEuP83hhW+vxCBer6Yd5taPKS2qf8WCUd7+v488abgEOGOPsjIHfGkMM8sgDbCPzgOVwlzOis900QKOi/xfqrTx0ARayYLv/prk2NT27EbVciz+jkt8hshSxp6F+qz9pPUFj/DAjUL34+aBXQSvo/YxWV4OD13YnCqW4wb05PHuugh4sT0iv4G43axow5TX1FlmJLKHSrkPVKZ+fzl5TfCz6ksZk3ZOHMq2v2WyvWoKWARHq1osJeICxNT5824p9NE9jO6Qn6l8PufiaxhdgWvHsansp8w+7yr6ywOVQvwYYv8RsiypWIWOE74/l1KxqEWlKdT81cLxRVB2fNy4jyRvp/JdbZhycT2xM1C0yNK5Nek+k/Fzm+0+N2xk9zhJeEbEdS64eKCbJjYmaPUzjHLyydS8rJzQTdxS0DcBuTxnTjrdBWpZx79RMycI2V79a4imsFbQnlfCJ+/s8h7F4r4MKPAPwvXi/jxrgjARbTj8dz3OGwr0t32AvcicbVwl1DmlyKZ6CtcydUryD9VBNoJYmHniQ1xrHCzY3FLyT9cLLzGbYk7Kc3/hPTv50kxaUUV8JxwN2cIn/YjHsJwcQdSRHZmWFMtjhTxjqUVUA/fYB+h1KPEJddMEaeGqfnbVvnjxfmhp3BRG4jdO1FYyyjl91Y/iDufa0Um1Bu/C8sYLq5dQIfV19GrFq1c/67GSsRqBaxi/Ae6TUkZ+MbaRgAAAABJRU5ErkJggg==\n", "text/latex": [ "$\\displaystyle 492.0056$" ], "text/plain": [ "492.0056" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Expected Count when there are no booking changes = 49.2%\n", "counts_sum=0\n", "for i in range(1,10000):\n", " counts_i = 0\n", " rdf = dataset[dataset[\"booking_changes\"]==0].sample(1000)\n", " counts_i = rdf[rdf[\"is_canceled\"]== rdf[\"different_room_assigned\"]].shape[0]\n", " counts_sum+= counts_i\n", "counts_sum/10000" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In the 2nd case, we take the scenario when there were booking changes(>0) and recalculate the expected count." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAGEAAAASCAYAAABLsLDMAAADc0lEQVR4nO3YSYgdVRQG4K+bhDiioBkcUJJWcWgEjUrEKaK2GAeMuHAlLjSKLgQ1UVxobyRGJAQ3ggtR0Y0GDIoYo21AJcEsbFFQHLATJxzj3MbZxbmPrq7Uo9+91UQX/W/Oe1Wn6v/vPVXn/nX7hoeHzeC/RX+X4+fhaXyB3/A5XsCyachfgxF8gl+xE6O4GweVDKJA78XYhE+Tho/wFE6fRr09c/Q1vAn3YWW6+Hl8g7lYjJewqmX+73gD7+Ar7IslOEVM3pI04F6Ry78mHfsWG1L+UbgMs3A1Hm+pN4ujXoTr8BAexYokoIrZ+KNFPuyFXXbHPbgTD+LGhvNNyOVfgM/wNU4Uk9rBuXgZY1jUQm82R7UdzUk3/rjLgNQGlJvfQdOA4MkUj+5yvo4S/iPFmF83eXJgM34Sb1Ebvdkcsyq/L0gn1+Fv0dMGk4ht2Fq7YW7+VLg0xbd6zC/h/0AU6zQcLNpEB2djf9E+2ujN5qgW4dQUd4mFZ7B281dwpXjNSvLruA374QDRX89MA7q3S34dJfw7cTvWih6/QfTtAdGvX8T1LfVmc1SLMC/Flenis/AmFuJ+DInVfWlhftOg5lf+b8Q1uhetjlL+ddiOh8Wa0sGHeMTuLaREbxZHf8PvP0XFXsPPeBvLhfs4x4TFys2vYwH6UrxCLFSjOLlLfh2l/KuwXkzGgHA7i4WFfEK4rbZ6sziqRfg+xVFRxSrGhe8mel1Jfjd8KTz+kPDdj02R30EJ/1JhH5/BLWJSxoUFXS5cza0mu6Ncvdkc1SK8VxtcHd+luHdh/lTYIdrKCWJBmwol/JekuLkhf1ws6P04qQf+bnqzOapFGME/OF7zl3Rn4RsrzO8Fh6b4Vw+5JfxzUqzbULXjTXa3CU16szmq4nfgWRyBm2sXDuFC8dRtLMyHY4S7qKNfeP552GLiKe5gAMeKj69SvfBqiitwWO2ai3CGcFtbWujN5ZjkjuAm8ZqsFb57VLiNy0W1r8UPLfKXYbVYRMeEdZsvFtBFYu+n6iY6GBEfQQtN7v+5/OvFVsb5eNfEftNxoo304Y6kq1RvLkfj3tFc3CUcxyH4UVR3tehnbfIHcYPw2IfjQPyC9/EcHhA+u47tmotQone2KN5VopXtkzi3Jf5N06A3h6OxCDPYw+i2lT2DPYiZIvwP8C8asI65zxkDXAAAAABJRU5ErkJggg==\n", "text/latex": [ "$\\displaystyle 663.6838$" ], "text/plain": [ "663.6838" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Expected Count when there are booking changes = 66.4%\n", "counts_sum=0\n", "for i in range(1,10000):\n", " counts_i = 0\n", " rdf = dataset[dataset[\"booking_changes\"]>0].sample(1000)\n", " counts_i = rdf[rdf[\"is_canceled\"]== rdf[\"different_room_assigned\"]].shape[0]\n", " counts_sum+= counts_i\n", "counts_sum/10000" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There is definitely some change happening when the number of booking changes are non-zero. So it gives us a hint that *Booking Changes* must be a confounding variable.\n", "\n", "But is *Booking Changes* the only confounding variable? What if there were some unobserved confounders, regarding which we have no information(feature) present in our dataset. Would we still be able to make the same claims as before?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Enter *DoWhy*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Step-1. Create a Causal Graph\n", "Represent your prior knowledge about the predictive modelling problem as a CI graph using assumptions. Don't worry, you need not specify the full graph at this stage. Even a partial graph would be enough and the rest can be figured out by *DoWhy* ;-)\n", "\n", "Here are a list of assumptions that have then been translated into a Causal Diagram:-\n", "\n", "- *Market Segment* has 2 levels, “TA” refers to the “Travel Agents” and “TO” means “Tour Operators” so it should affect the Lead Time (which is simply the number of days between booking and arrival).\n", "- *Country* would also play a role in deciding whether a person books early or not (hence more *Lead Time*) and what type of *Meal* a person would prefer.\n", "- *Lead Time* would definitely affected the number of *Days in Waitlist* (There are lesser chances of finding a reservation if you’re booking late). Additionally, higher *Lead Times* can also lead to *Cancellations*.\n", "- The number of *Days in Waitlist*, the *Total Stay* in nights and the number of *Guests* might affect whether the booking is cancelled or retained.\n", "- *Previous Booking Retentions* would affect whether a customer is a *Repeated Guest* or not. Additionally, both of these variables would affect whether the booking get *cancelled* or not (Ex- A customer who has retained his past 5 bookings in the past has a higher chance of retaining this one also. Similarly a person who has been cancelling this booking has a higher chance of repeating the same).\n", "- *Booking Changes* would affect whether the customer is assigned a *different room* or not which might also lead to *cancellation*.\n", "- Finally, the number of *Booking Changes* being the only confounder affecting *Treatment* and *Outcome* is highly unlikely and its possible that there might be some *Unobsevered Confounders*, regarding which we have no information being captured in our data." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "import pygraphviz\n", "causal_graph = \"\"\"digraph {\n", "different_room_assigned[label=\"Different Room Assigned\"];\n", "is_canceled[label=\"Booking Cancelled\"];\n", "booking_changes[label=\"Booking Changes\"];\n", "previous_bookings_not_canceled[label=\"Previous Booking Retentions\"];\n", "days_in_waiting_list[label=\"Days in Waitlist\"];\n", "lead_time[label=\"Lead Time\"];\n", "market_segment[label=\"Market Segment\"];\n", "country[label=\"Country\"];\n", "U[label=\"Unobserved Confounders\"];\n", "is_repeated_guest;\n", "total_stay;\n", "guests;\n", "meal;\n", "market_segment -> lead_time;\n", "lead_time->is_canceled; country -> lead_time;\n", "different_room_assigned -> is_canceled;\n", "U -> different_room_assigned; U -> lead_time; U -> is_canceled;\n", "country->meal;\n", "lead_time -> days_in_waiting_list;\n", "days_in_waiting_list ->is_canceled;\n", "previous_bookings_not_canceled -> is_canceled;\n", "previous_bookings_not_canceled -> is_repeated_guest;\n", "is_repeated_guest -> is_canceled;\n", "total_stay -> is_canceled;\n", "guests -> is_canceled;\n", "booking_changes -> different_room_assigned; booking_changes -> is_canceled; \n", "}\"\"\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here the *Treatment* is assigning the same type of room reserved by the customer during Booking. *Outcome* would be whether the booking was cancelled or not.\n", "*Common Causes* represent the variables that according to us have a causal affect on both *Outcome* and *Treatment*.\n", "As per our causal assumptions, the 2 variables satisfying this criteria are *Booking Changes* and the *Unobserved Confounders*.\n", "So if we are not specifying the graph explicitly (Not Recommended!), one can also provide these as parameters in the function mentioned below." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_model:Model to find the causal effect of treatment ['different_room_assigned'] on outcome ['is_canceled']\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "model= dowhy.CausalModel(\n", " data = dataset,\n", " graph=causal_graph.replace(\"\\n\", \" \"),\n", " treatment='different_room_assigned',\n", " outcome='is_canceled')\n", "model.view_model()\n", "from IPython.display import Image, display\n", "display(Image(filename=\"causal_model.png\"))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Step-2. Identify the Causal Effect\n", "We say that Treatment causes Outcome if changing Treatment leads to a change in Outcome keeping everything else constant.\n", "Thus in this step, by using properties of the causal graph, we identify the causal effect to be estimated" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "WARNING:dowhy.causal_identifier:If this is observed data (not from a randomized experiment), there might always be missing confounders. Causal effect cannot be identified perfectly.\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "WARN: Do you want to continue by ignoring any unobserved confounders? (use proceed_when_unidentifiable=True to disable this prompt) [y/n] y\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_identifier:Instrumental variables for treatment and outcome:[]\n", "INFO:dowhy.causal_identifier:Frontdoor variables for treatment and outcome:[]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Estimand type: nonparametric-ate\n", "\n", "### Estimand : 1\n", "Estimand name: backdoor1\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes))\n", "d[different_room_assigned] \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes)\n", "\n", "### Estimand : 2\n", "Estimand name: backdoor2\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes)\n", "\n", "### Estimand : 3\n", "Estimand name: backdoor3\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes)\n", "\n", "### Estimand : 4\n", "Estimand name: backdoor4\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes)\n", "\n", "### Estimand : 5\n", "Estimand name: backdoor5\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes)\n", "\n", "### Estimand : 6\n", "Estimand name: backdoor6\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,t\n", "d[different_room_assigned] \n", "\n", " \n", "otal_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay)\n", "\n", "### Estimand : 7\n", "Estimand name: backdoor7\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,d\n", "d[different_room_assigned] \n", "\n", " \n", "ays_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 8\n", "Estimand name: backdoor8\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,m\n", "d[different_room_assigned] \n", "\n", " \n", "eal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,meal)\n", "\n", "### Estimand : 9\n", "Estimand name: backdoor9\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,g\n", "d[different_room_assigned] \n", "\n", " \n", "uests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,guests)\n", "\n", "### Estimand : 10\n", "Estimand name: backdoor10\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes)\n", "\n", "### Estimand : 11\n", "Estimand name: backdoor11\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes)\n", "\n", "### Estimand : 12\n", "Estimand name: backdoor12\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes)\n", "\n", "### Estimand : 13\n", "Estimand name: backdoor13\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay)\n", "\n", "### Estimand : 14\n", "Estimand name: backdoor14\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 15\n", "Estimand name: backdoor15\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,meal)\n", "\n", "### Estimand : 16\n", "Estimand name: backdoor16\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,guests)\n", "\n", "### Estimand : 17\n", "Estimand name: backdoor17\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes)\n", "\n", "### Estimand : 18\n", "Estimand name: backdoor18\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes)\n", "\n", "### Estimand : 19\n", "Estimand name: backdoor19\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay)\n", "\n", "### Estimand : 20\n", "Estimand name: backdoor20\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 21\n", "Estimand name: backdoor21\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,meal)\n", "\n", "### Estimand : 22\n", "Estimand name: backdoor22\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,guests)\n", "\n", "### Estimand : 23\n", "Estimand name: backdoor23\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes)\n", "\n", "### Estimand : 24\n", "Estimand name: backdoor24\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay)\n", "\n", "### Estimand : 25\n", "Estimand name: backdoor25\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 26\n", "Estimand name: backdoor26\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,meal)\n", "\n", "### Estimand : 27\n", "Estimand name: backdoor27\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,guests)\n", "\n", "### Estimand : 28\n", "Estimand name: backdoor28\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay)\n", "\n", "### Estimand : 29\n", "Estimand name: backdoor29\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 30\n", "Estimand name: backdoor30\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,meal)\n", "\n", "### Estimand : 31\n", "Estimand name: backdoor31\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,guests)\n", "\n", "### Estimand : 32\n", "Estimand name: backdoor32\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,t\n", "d[different_room_assigned] \n", "\n", " \n", "otal_stay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 33\n", "Estimand name: backdoor33\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,t\n", "d[different_room_assigned] \n", "\n", " \n", "otal_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 34\n", "Estimand name: backdoor34\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,t\n", "d[different_room_assigned] \n", "\n", " \n", "otal_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 35\n", "Estimand name: backdoor35\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,d\n", "d[different_room_assigned] \n", "\n", " \n", "ays_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 36\n", "Estimand name: backdoor36\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,d\n", "d[different_room_assigned] \n", "\n", " \n", "ays_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 37\n", "Estimand name: backdoor37\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,m\n", "d[different_room_assigned] \n", "\n", " \n", "eal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,meal,guests)\n", "\n", "### Estimand : 38\n", "Estimand name: backdoor38\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes)\n", "\n", "### Estimand : 39\n", "Estimand name: backdoor39\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes)\n", "\n", "### Estimand : 40\n", "Estimand name: backdoor40\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay)\n", "\n", "### Estimand : 41\n", "Estimand name: backdoor41\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 42\n", "Estimand name: backdoor42\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,meal)\n", "\n", "### Estimand : 43\n", "Estimand name: backdoor43\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,guests)\n", "\n", "### Estimand : 44\n", "Estimand name: backdoor44\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes)\n", "\n", "### Estimand : 45\n", "Estimand name: backdoor45\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay)\n", "\n", "### Estimand : 46\n", "Estimand name: backdoor46\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 47\n", "Estimand name: backdoor47\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,meal)\n", "\n", "### Estimand : 48\n", "Estimand name: backdoor48\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,guests)\n", "\n", "### Estimand : 49\n", "Estimand name: backdoor49\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay)\n", "\n", "### Estimand : 50\n", "Estimand name: backdoor50\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 51\n", "Estimand name: backdoor51\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,meal)\n", "\n", "### Estimand : 52\n", "Estimand name: backdoor52\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,guests)\n", "\n", "### Estimand : 53\n", "Estimand name: backdoor53\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,total_stay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 54\n", "Estimand name: backdoor54\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 55\n", "Estimand name: backdoor55\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 56\n", "Estimand name: backdoor56\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 57\n", "Estimand name: backdoor57\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 58\n", "Estimand name: backdoor58\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,meal,guests)\n", "\n", "### Estimand : 59\n", "Estimand name: backdoor59\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes)\n", "\n", "### Estimand : 60\n", "Estimand name: backdoor60\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay)\n", "\n", "### Estimand : 61\n", "Estimand name: backdoor61\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 62\n", "Estimand name: backdoor62\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,meal)\n", "\n", "### Estimand : 63\n", "Estimand name: backdoor63\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,guests)\n", "\n", "### Estimand : 64\n", "Estimand name: backdoor64\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay)\n", "\n", "### Estimand : 65\n", "Estimand name: backdoor65\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 66\n", "Estimand name: backdoor66\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,meal)\n", "\n", "### Estimand : 67\n", "Estimand name: backdoor67\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,guests)\n", "\n", "### Estimand : 68\n", "Estimand name: backdoor68\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,total_stay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 69\n", "Estimand name: backdoor69\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 70\n", "Estimand name: backdoor70\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 71\n", "Estimand name: backdoor71\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 72\n", "Estimand name: backdoor72\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 73\n", "Estimand name: backdoor73\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,meal,guests)\n", "\n", "### Estimand : 74\n", "Estimand name: backdoor74\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay)\n", "\n", "### Estimand : 75\n", "Estimand name: backdoor75\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 76\n", "Estimand name: backdoor76\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,meal)\n", "\n", "### Estimand : 77\n", "Estimand name: backdoor77\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,guests)\n", "\n", "### Estimand : 78\n", "Estimand name: backdoor78\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,total_stay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 79\n", "Estimand name: backdoor79\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 80\n", "Estimand name: backdoor80\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 81\n", "Estimand name: backdoor81\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 82\n", "Estimand name: backdoor82\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 83\n", "Estimand name: backdoor83\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,meal,guests)\n", "\n", "### Estimand : 84\n", "Estimand name: backdoor84\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,total_stay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 85\n", "Estimand name: backdoor85\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 86\n", "Estimand name: backdoor86\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 87\n", "Estimand name: backdoor87\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 88\n", "Estimand name: backdoor88\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 89\n", "Estimand name: backdoor89\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,meal,guests)\n", "\n", "### Estimand : 90\n", "Estimand name: backdoor90\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,t\n", "d[different_room_assigned] \n", "\n", " \n", "otal_stay,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 91\n", "Estimand name: backdoor91\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,t\n", "d[different_room_assigned] \n", "\n", " \n", "otal_stay,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 92\n", "Estimand name: backdoor92\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,t\n", "d[different_room_assigned] \n", "\n", " \n", "otal_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 93\n", "Estimand name: backdoor93\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,d\n", "d[different_room_assigned] \n", "\n", " \n", "ays_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 94\n", "Estimand name: backdoor94\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes)\n", "\n", "### Estimand : 95\n", "Estimand name: backdoor95\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay)\n", "\n", "### Estimand : 96\n", "Estimand name: backdoor96\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 97\n", "Estimand name: backdoor97\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,meal)\n", "\n", "### Estimand : 98\n", "Estimand name: backdoor98\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,guests)\n", "\n", "### Estimand : 99\n", "Estimand name: backdoor99\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay)\n", "\n", "### Estimand : 100\n", "Estimand name: backdoor100\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting\n", " \n", "\n", " \n", "_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 101\n", "Estimand name: backdoor101\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,meal)\n", "\n", "### Estimand : 102\n", "Estimand name: backdoor102\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,guests)\n", "\n", "### Estimand : 103\n", "Estimand name: backdoor103\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_lis\n", " \n", "\n", " \n", "t))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 104\n", "Estimand name: backdoor104\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 105\n", "Estimand name: backdoor105\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 106\n", "Estimand name: backdoor106\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 107\n", "Estimand name: backdoor107\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 108\n", "Estimand name: backdoor108\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,meal,guests)\n", "\n", "### Estimand : 109\n", "Estimand name: backdoor109\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay)\n", "\n", "### Estimand : 110\n", "Estimand name: backdoor110\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 111\n", "Estimand name: backdoor111\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,meal)\n", "\n", "### Estimand : 112\n", "Estimand name: backdoor112\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,guests)\n", "\n", "### Estimand : 113\n", "Estimand name: backdoor113\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,total_stay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 114\n", "Estimand name: backdoor114\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 115\n", "Estimand name: backdoor115\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 116\n", "Estimand name: backdoor116\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 117\n", "Estimand name: backdoor117\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 118\n", "Estimand name: backdoor118\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,meal,guests)\n", "\n", "### Estimand : 119\n", "Estimand name: backdoor119\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,total_stay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 120\n", "Estimand name: backdoor120\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 121\n", "Estimand name: backdoor121\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 122\n", "Estimand name: backdoor122\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 123\n", "Estimand name: backdoor123\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 124\n", "Estimand name: backdoor124\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,meal,guests)\n", "\n", "### Estimand : 125\n", "Estimand name: backdoor125\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,total_stay,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 126\n", "Estimand name: backdoor126\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,total_stay,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 127\n", "Estimand name: backdoor127\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 128\n", "Estimand name: backdoor128\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 129\n", "Estimand name: backdoor129\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,total_stay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay)\n", "\n", "### Estimand : 130\n", "Estimand name: backdoor130\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 131\n", "Estimand name: backdoor131\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,meal)\n", "\n", "### Estimand : 132\n", "Estimand name: backdoor132\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,guests)\n", "\n", "### Estimand : 133\n", "Estimand name: backdoor133\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,total_stay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 134\n", "Estimand name: backdoor134\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 135\n", "Estimand name: backdoor135\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 136\n", "Estimand name: backdoor136\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 137\n", "Estimand name: backdoor137\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 138\n", "Estimand name: backdoor138\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,meal,guests)\n", "\n", "### Estimand : 139\n", "Estimand name: backdoor139\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 140\n", "Estimand name: backdoor140\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 141\n", "Estimand name: backdoor141\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 142\n", "Estimand name: backdoor142\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 143\n", "Estimand name: backdoor143\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 144\n", "Estimand name: backdoor144\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,meal,guests)\n", "\n", "### Estimand : 145\n", "Estimand name: backdoor145\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,total_stay,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 146\n", "Estimand name: backdoor146\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,total_stay,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 147\n", "Estimand name: backdoor147\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 148\n", "Estimand name: backdoor148\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 149\n", "Estimand name: backdoor149\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,total_stay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 150\n", "Estimand name: backdoor150\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 151\n", "Estimand name: backdoor151\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 152\n", "Estimand name: backdoor152\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 153\n", "Estimand name: backdoor153\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 154\n", "Estimand name: backdoor154\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,meal,guests)\n", "\n", "### Estimand : 155\n", "Estimand name: backdoor155\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,total_stay,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 156\n", "Estimand name: backdoor156\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,total_stay,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 157\n", "Estimand name: backdoor157\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 158\n", "Estimand name: backdoor158\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 159\n", "Estimand name: backdoor159\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,total_stay,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 160\n", "Estimand name: backdoor160\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,total_stay,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 161\n", "Estimand name: backdoor161\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 162\n", "Estimand name: backdoor162\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 163\n", "Estimand name: backdoor163\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,booking_changes,t\n", "d[different_room_assigned] \n", "\n", " \n", "otal_stay,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 164\n", "Estimand name: backdoor164\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,total_s\n", " \n", "\n", " \n", "tay))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay)\n", "\n", "### Estimand : 165\n", "Estimand name: backdoor165\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,days_in\n", " \n", "\n", " \n", "_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list)\n", "\n", "### Estimand : 166\n", "Estimand name: backdoor166\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,meal)\n", "\n", "### Estimand : 167\n", "Estimand name: backdoor167\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,guests)\n", " \n", "\n", " \n", ")\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,guests)\n", "\n", "### Estimand : 168\n", "Estimand name: backdoor168\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_wai\n", " \n", "\n", " \n", "ting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 169\n", "Estimand name: backdoor169\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 170\n", "Estimand name: backdoor170\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 171\n", "Estimand name: backdoor171\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,m\n", " \n", "\n", " \n", "eal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 172\n", "Estimand name: backdoor172\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,g\n", " \n", "\n", " \n", "uests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 173\n", "Estimand name: backdoor173\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,meal,guests)\n", "\n", "### Estimand : 174\n", "Estimand name: backdoor174\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days\n", " \n", "\n", " \n", "_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 175\n", "Estimand name: backdoor175\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,total_stay,meal\n", " \n", "\n", " \n", "))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 176\n", "Estimand name: backdoor176\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,total_stay,gues\n", " \n", "\n", " \n", "ts))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 177\n", "Estimand name: backdoor177\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting\n", " \n", "\n", " \n", "_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 178\n", "Estimand name: backdoor178\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting\n", " \n", "\n", " \n", "_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 179\n", "Estimand name: backdoor179\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,meal,guests)\n", "\n", "### Estimand : 180\n", "Estimand name: backdoor180\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_lis\n", " \n", "\n", " \n", "t,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 181\n", "Estimand name: backdoor181\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_lis\n", " \n", "\n", " \n", "t,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 182\n", "Estimand name: backdoor182\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 183\n", "Estimand name: backdoor183\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,days_in_waiting_list,meal,gues\n", " \n", "\n", " \n", "ts))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 184\n", "Estimand name: backdoor184\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,total_stay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 185\n", "Estimand name: backdoor185\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 186\n", "Estimand name: backdoor186\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 187\n", "Estimand name: backdoor187\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 188\n", "Estimand name: backdoor188\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 189\n", "Estimand name: backdoor189\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,meal,guests)\n", "\n", "### Estimand : 190\n", "Estimand name: backdoor190\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,total_stay,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 191\n", "Estimand name: backdoor191\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,total_stay,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 192\n", "Estimand name: backdoor192\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 193\n", "Estimand name: backdoor193\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 194\n", "Estimand name: backdoor194\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,total_stay,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 195\n", "Estimand name: backdoor195\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,total_stay,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 196\n", "Estimand name: backdoor196\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 197\n", "Estimand name: backdoor197\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 198\n", "Estimand name: backdoor198\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",booking_changes,total_stay,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 199\n", "Estimand name: backdoor199\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waitin\n", " \n", "\n", " \n", "g_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 200\n", "Estimand name: backdoor200\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,total_stay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 201\n", "Estimand name: backdoor201\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,total_stay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 202\n", "Estimand name: backdoor202\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,meal\n", " \n", "\n", " \n", "))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 203\n", "Estimand name: backdoor203\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,gues\n", " \n", "\n", " \n", "ts))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 204\n", "Estimand name: backdoor204\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,meal,guests)\n", "\n", "### Estimand : 205\n", "Estimand name: backdoor205\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 206\n", "Estimand name: backdoor206\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 207\n", "Estimand name: backdoor207\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 208\n", "Estimand name: backdoor208\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 209\n", "Estimand name: backdoor209\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,m\n", " \n", "\n", " \n", "eal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 210\n", "Estimand name: backdoor210\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,g\n", " \n", "\n", " \n", "uests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 211\n", "Estimand name: backdoor211\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 212\n", "Estimand name: backdoor212\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,days_in_waiting_list,meal,guests)\n", " \n", "\n", " \n", ")\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 213\n", "Estimand name: backdoor213\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,booking_changes,total_stay,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 214\n", "Estimand name: backdoor214\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,total_stay,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 215\n", "Estimand name: backdoor215\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,total_stay,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 216\n", "Estimand name: backdoor216\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 217\n", "Estimand name: backdoor217\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 218\n", "Estimand name: backdoor218\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,booking_c\n", "d[different_room_assigned] \n", "\n", " \n", "hanges,total_stay,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 219\n", "Estimand name: backdoor219\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,market_segment,bo\n", "d[different_room_assigned] \n", "\n", " \n", "oking_changes,total_stay,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 220\n", "Estimand name: backdoor220\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,total_s\n", " \n", "\n", " \n", "tay,days_in_waiting_list))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list)\n", "\n", "### Estimand : 221\n", "Estimand name: backdoor221\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,total_s\n", " \n", "\n", " \n", "tay,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,meal)\n", "\n", "### Estimand : 222\n", "Estimand name: backdoor222\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,total_s\n", " \n", "\n", " \n", "tay,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,guests)\n", "\n", "### Estimand : 223\n", "Estimand name: backdoor223\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,days_in\n", " \n", "\n", " \n", "_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,meal)\n", "\n", "### Estimand : 224\n", "Estimand name: backdoor224\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,days_in\n", " \n", "\n", " \n", "_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,guests)\n", "\n", "### Estimand : 225\n", "Estimand name: backdoor225\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,meal,gu\n", " \n", "\n", " \n", "ests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,meal,guests)\n", "\n", "### Estimand : 226\n", "Estimand name: backdoor226\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_wai\n", " \n", "\n", " \n", "ting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 227\n", "Estimand name: backdoor227\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_wai\n", " \n", "\n", " \n", "ting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 228\n", "Estimand name: backdoor228\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,total_stay,meal,guests\n", " \n", "\n", " \n", "))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 229\n", "Estimand name: backdoor229\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,m\n", " \n", "\n", " \n", "eal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 230\n", "Estimand name: backdoor230\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days\n", " \n", "\n", " \n", "_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 231\n", "Estimand name: backdoor231\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days\n", " \n", "\n", " \n", "_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 232\n", "Estimand name: backdoor232\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,total_stay,meal\n", " \n", "\n", " \n", ",guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 233\n", "Estimand name: backdoor233\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting\n", " \n", "\n", " \n", "_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 234\n", "Estimand name: backdoor234\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_lis\n", " \n", "\n", " \n", "t,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 235\n", "Estimand name: backdoor235\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 236\n", "Estimand name: backdoor236\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,total_stay,days_in_waiting_list,guests\n", " \n", "\n", " \n", "))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 237\n", "Estimand name: backdoor237\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 238\n", "Estimand name: backdoor238\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 239\n", "Estimand name: backdoor239\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,booking_changes,total_stay,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 240\n", "Estimand name: backdoor240\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 241\n", "Estimand name: backdoor241\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waitin\n", " \n", "\n", " \n", "g_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 242\n", "Estimand name: backdoor242\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waitin\n", " \n", "\n", " \n", "g_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 243\n", "Estimand name: backdoor243\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,total_stay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 244\n", "Estimand name: backdoor244\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,meal\n", " \n", "\n", " \n", ",guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 245\n", "Estimand name: backdoor245\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,meal,gue\n", " \n", "\n", " \n", "sts))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 246\n", "Estimand name: backdoor246\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,m\n", " \n", "\n", " \n", "eal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 247\n", "Estimand name: backdoor247\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,country,market_se\n", "d[different_room_assigned] \n", "\n", " \n", "gment,booking_changes,total_stay,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 248\n", "Estimand name: backdoor248\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,total_s\n", " \n", "\n", " \n", "tay,days_in_waiting_list,meal))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal)\n", "\n", "### Estimand : 249\n", "Estimand name: backdoor249\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,total_s\n", " \n", "\n", " \n", "tay,days_in_waiting_list,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,guests)\n", "\n", "### Estimand : 250\n", "Estimand name: backdoor250\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,total_s\n", " \n", "\n", " \n", "tay,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,meal,guests)\n", "\n", "### Estimand : 251\n", "Estimand name: backdoor251\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,days_in\n", " \n", "\n", " \n", "_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 252\n", "Estimand name: backdoor252\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_wai\n", " \n", "\n", " \n", "ting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 253\n", "Estimand name: backdoor253\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days\n", " \n", "\n", " \n", "_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 254\n", "Estimand name: backdoor254\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,g\n", " \n", "\n", " \n", "uests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 255\n", "Estimand name: backdoor255\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,previous_bookings\n", "d[different_room_assigned] \n", "\n", " \n", "_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waitin\n", " \n", "\n", " \n", "g_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 256\n", "Estimand name: backdoor256 (Default)\n", "Estimand expression:\n", " d \n", "──────────────────────────(Expectation(is_canceled|lead_time,is_repeated_guest\n", "d[different_room_assigned] \n", "\n", " \n", ",previous_bookings_not_canceled,country,market_segment,booking_changes,total_s\n", " \n", "\n", " \n", "tay,days_in_waiting_list,meal,guests))\n", " \n", "Estimand assumption 1, Unconfoundedness: If U→{different_room_assigned} and U→is_canceled then P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests,U) = P(is_canceled|different_room_assigned,lead_time,is_repeated_guest,previous_bookings_not_canceled,country,market_segment,booking_changes,total_stay,days_in_waiting_list,meal,guests)\n", "\n", "### Estimand : 257\n", "Estimand name: iv\n", "No such variable found!\n", "\n", "### Estimand : 258\n", "Estimand name: frontdoor\n", "No such variable found!\n", "\n" ] } ], "source": [ "#Identify the causal effect\n", "identified_estimand = model.identify_effect()\n", "print(identified_estimand)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Step-3. Estimate the identified estimand" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "*** Causal Estimate ***\n", "\n", "## Identified estimand\n", "Estimand type: nonparametric-ate\n", "\n", "## Realized estimand\n", "b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "Target units: ate\n", "\n", "## Estimate\n", "Mean value: -0.33682918938420675\n", "\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n" ] } ], "source": [ "estimate = model.estimate_effect(identified_estimand, \n", " method_name=\"backdoor.propensity_score_stratification\",target_units=\"ate\")\n", "# ATE = Average Treatment Effect\n", "# ATT = Average Treatment Effect on Treated (i.e. those who were assigned a different room)\n", "# ATC = Average Treatment Effect on Control (i.e. those who were not assigned a different room)\n", "print(estimate)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Step-4. Refute results\n", "\n", "Note that the causal part does not come from data. It comes from your *assumptions* that lead to *identification*. Data is simply used for statistical *estimation*. Thus it becomes critical to verify whether our assumptions were even correct in the first step or not!\n", "\n", "What happens when another common cause exists?\n", "What happens when the treatment itself was placebo?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Method-1\n", "**Radom Common Cause:-** *Adds randomly drawn covariates to data and re-runs the analysis to see if the causal estimate changes or not. If our assumption was originally correct then the causal estimate shouldn't change by much.*" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests+w_random\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Refute: Add a Random Common Cause\n", "Estimated effect:-0.33682918938420675\n", "New effect:-0.336156826783791\n", "\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n" ] } ], "source": [ "refute1_results=model.refute_estimate(identified_estimand, estimate,\n", " method_name=\"random_common_cause\")\n", "print(refute1_results)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Method-2\n", "**Placebo Treatment Refuter:-** *Randomly assigns any covariate as a treatment and re-runs the analysis. If our assumptions were correct then this newly found out estimate should go to 0.*" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Refutation over 100 simulated datasets of Random Data treatment\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Using a Binomial Distribution with 1 trials and 0.5 probability of success\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~placebo+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.placebo_treatment_refuter:Making use of Bootstrap as we have more than 100 examples.\n", " Note: The greater the number of examples, the more accurate are the confidence estimates\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Refute: Use a Placebo Treatment\n", "Estimated effect:-0.33682918938420675\n", "New effect:0.00021368335134707773\n", "p value:0.49\n", "\n" ] } ], "source": [ "refute2_results=model.refute_estimate(identified_estimand, estimate,\n", " method_name=\"placebo_treatment_refuter\")\n", "print(refute2_results)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Method-3\n", "**Data Subset Refuter:-** *Creates subsets of the data(similar to cross-validation) and checks whether the causal estimates vary across subsets. If our assumptions were correct there shouldn't be much variation.*" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_refuters.data_subset_refuter:Refutation over 0.8 simulated datasets of size 95508.8 each\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_estimator:INFO: Using Propensity Score Stratification Estimator\n", "INFO:dowhy.causal_estimator:b: is_canceled~different_room_assigned+lead_time+is_repeated_guest+previous_bookings_not_canceled+country+market_segment+booking_changes+total_stay+days_in_waiting_list+meal+guests\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/utils/validation.py:72: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().\n", " return f(**kwargs)\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/sklearn/linear_model/_logistic.py:762: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " n_iter_i = _check_optimize_result(\n", "/home/amit/py-envs/env3.8/lib/python3.8/site-packages/pandas/core/computation/expressions.py:203: UserWarning: evaluating in Python space because the '*' operator is not supported by numexpr for the bool dtype, use '&' instead\n", " warnings.warn(\n", "INFO:dowhy.causal_refuters.data_subset_refuter:Making use of Bootstrap as we have more than 100 examples.\n", " Note: The greater the number of examples, the more accurate are the confidence estimates\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Refute: Use a subset of data\n", "Estimated effect:-0.33682918938420675\n", "New effect:-0.33645145863692627\n", "p value:0.43\n", "\n" ] } ], "source": [ "refute3_results=model.refute_estimate(identified_estimand, estimate,\n", " method_name=\"data_subset_refuter\")\n", "print(refute3_results)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can see that our estimate passes all three refutation tests. This does not prove its correctness, but it increases confidence in the estimate. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Comparing Results with XGBoost Feature Importance\n", "We now know the effect of assigning a different room is 36 percentage points, so it might be a good exercise to compare results with feature importance obtained using a model offering high predictive accuracy on this dataset.\n", "\n", "We choose XGBoost as the model as it offers a fairly high predictive accuracy on this dataset. The *plot_importance* function of XGBoost is used to calculate feature importance. Contrary to our analysis using *DoWhy*, it is observed that *Different_room_assigned* attains a relatively low importance score." ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 86.90%\n", " precision recall f1-score support\n", "\n", " False 0.88 0.92 0.90 15001\n", " True 0.85 0.79 0.82 8877\n", "\n", " accuracy 0.87 23878\n", " macro avg 0.86 0.85 0.86 23878\n", "weighted avg 0.87 0.87 0.87 23878\n", "\n" ] } ], "source": [ "# plot feature importance using built-in function\n", "from xgboost import XGBClassifier\n", "from xgboost import plot_importance\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.metrics import accuracy_score, classification_report\n", "from matplotlib import pyplot\n", "# split data into X and y\n", "X = dataset_copy\n", "y = dataset_copy['is_canceled']\n", "X = X.drop(['is_canceled'],axis=1)\n", "# One-Hot Encode the dataset\n", "X = pd.get_dummies(X)\n", "# split data into train and test sets\n", "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=26)\n", "# fit model no training data\n", "model = XGBClassifier()\n", "model.fit(X_train, y_train)\n", "# make predictions for test data and evaluate\n", "y_pred = model.predict(X_test)\n", "predictions = [int(value) for value in y_pred]\n", "accuracy = accuracy_score(y_test, predictions)\n", "print(\"Accuracy: %.2f%%\" % (accuracy * 100.0))\n", "print(classification_report(y_test, predictions))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The feature importance plotted below uses **weight** to rank features. Here **weight** is the number of times a feature appears in a tree" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# plot feature importance\n", "plot_importance(model,max_num_features=20)\n", "pyplot.show()" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "To toggle on/off output_stderr, click here." ], "text/plain": [ "" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Execute this code to hide all warnings\n", "from IPython.display import HTML\n", "HTML('''\n", "To toggle on/off output_stderr, click here.''')" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.5" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": false, "sideBar": true, "skip_h1_title": true, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": true } }, "nbformat": 4, "nbformat_minor": 4 }